package com.ruoyi.common.core.domain.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;

import java.util.Date;

@Data
public class AppUser extends BaseEntity {
    private static final long serialVersionUID = 1L;


    /**
     * 用户ID
     */
    @TableId
    private Long userId;

    /**
     * 用户账号
     */
    @Excel(name = "客户账号", cellType = Excel.ColumnType.NUMERIC, prompt = "用户账号")
    private String userName;

    /**
     * 用户昵称
     */
    @Excel(name = "客户昵称", type = Excel.Type.IMPORT)
    private String nickName;

    /**
     * 用户邮箱
     */
    @Excel(name = "客户邮箱", type = Excel.Type.IMPORT)
    private String email;

    /**
     * 手机号码
     */
    @Excel(name = "手机号码", type = Excel.Type.IMPORT)
    private String mobile;

    /**
     * 用户性别（0=男,1=女,2=未知）
     */
    @Excel(name = "客户性别（0=男,1=女,2=未知）", type = Excel.Type.IMPORT)
    private String sex;

    /**
     * 用户头像
     */
    private String avatar;

    /**
     * 密码
     */
    private String password;

    /**
     * 用户唯一openId
     */
    @Getter
    private String openId;

    /**
     * 盐
     */
    private String salt;

    /**
     * 帐号状态（0=正常,1=停用）
     */
    private String status;

    /**
     * 是否管理员（0=否,1=是）
     */
    private String isAdmin;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;

    /**
     * 最后登录IP
     */
    private String loginIp;

    /**
     * 最后登录时间
     */
    private Date loginDate;

    /**
     * 预约数量
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "预约数量")
    private Long number;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public void setOpenId(String openId) {
        this.openId = openId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getSalt() {
        return salt;
    }

    public void setSalt(String salt) {
        this.salt = salt;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getLoginIp() {
        return loginIp;
    }

    public void setLoginIp(String loginIp) {
        this.loginIp = loginIp;
    }

    public Date getLoginDate() {
        return loginDate;
    }

    public void setLoginDate(Date loginDate) {
        this.loginDate = loginDate;
    }
}
